using System;
using System.Collections.Generic;
using System.Reflection;
using Castle.Core.Configuration;
using Castle.Core.Interceptor;

namespace Castle.Facilities.PolicyInjection
{
    public interface IRule
    {
        bool IsMatch(Type componentType, IDictionary<string, string> configurationAttributeCollection);

        bool IsIntercept(IInvocation invocation, IDictionary<string, string> configurationAttributeCollection);        
    }
}
